1. Technology Field
The present invention generally relates to a method for identifying bad blocks in a memory, in particular, to a bad block identifying method for a flash memory, a storage system, and a controller thereof.
2. Description of Related Art
Along with the widespread of digital cameras, camera phones, MP3, and MP4 in recently years, the consumers' demand to storage media has increased drastically too. Among all the existing storage media, flash memory is one of the most adaptable memories for such portable multi-media products due to its characteristics such as data non-volatility, low power consumption, small volume, and non-mechanical structure.
Conventionally, a storage system having a flash memory checks whether a writing or erasing operation it executes to a block in the flash memory is correct or not. If an error occurs during the operation, the block is determined as a bad block, and the block is marked as a bad block or the address thereof is recorded in a bad block management table so that later on the storage system will not use the bad block for storing data.
The cycle time for writing or erasing a flash memory is shortened along with the advancement of the fabricating technique thereof. Besides, the time for writing into a flash memory is further shortened through the technique of programming two pages at one time. However, more noises may be produced in a storage system along with the increment of programming speed, and accordingly, a block may be mistakenly determined as a bad block during a programming operation. Such a misjudged block will be marked in a bad block management table therefore will not be used again so that available system resource (i.e. the block) will be wasted and the lifespan of the flash memory storage system will be shortened.